/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package CapaDatos;

import java.sql.ResultSet;
import java.util.LinkedList;

public class Oferta_DAO implements DAO {

    private int value = -1;
    private String sentenciaSQL;
    ConexionDB conexion;
    LinkedList<Oferta_POJO> listaDetalle = new LinkedList<Oferta_POJO>();
    Oferta_POJO retorno = new Oferta_POJO();
    ResultSet resultado;

    public Oferta_DAO() {
        this.conexion = new ConexionDB();
    }

    @Override
    public LinkedList<Oferta_POJO> obtenerReg(int id) {
        sentenciaSQL = "select idoferta,valor,fecha,idsubasta,idusuario from Oferta where idoferta=" + id;

        try {
            conexion.abrirConexion();
            resultado = conexion.getResultSet(sentenciaSQL);

            if (resultado.next()) {

                retorno.setIdOferta(Integer.parseInt(resultado.getString("idoferta")));
                retorno.setValor(Double.parseDouble(resultado.getString("valor")));
                retorno.setIdSubasta(Integer.parseInt(resultado.getString("idsubasta")));
                retorno.setFecha(resultado.getString("fecha"));
                retorno.setIdUsuario(Integer.parseInt(resultado.getString("idusuario")));

                listaDetalle.add(retorno);

            }

        } catch (Exception ex) {
            System.out.println("error " + ex);
        }
        conexion.cerrarConexion();
        return listaDetalle;

    }

    public int guardarReg( String valor, String fecha, int idsubasta, int idusuario) {


        sentenciaSQL = "INSERT INTO oferta (valor,fecha,idSubasta,idUsuario) VALUES ("
                + valor + ",'" + fecha + "'," + idsubasta + "," + idusuario + ")";

        System.out.println(sentenciaSQL);
        try {
            conexion.abrirConexion();
            value = conexion.executeQuery(sentenciaSQL);


        } catch (Exception ex) {
            System.out.println("error " + ex);
        }
        conexion.cerrarConexion();
        return value;
    }

    public int actualizarReg(int idoferta, String valor, String fecha, int idsubasta, int idusuario) {


        sentenciaSQL = "UPDATE  oferta   SET  valor='" + valor
                + "',fecha='" + fecha + "',idsubasta='" + idsubasta + "',idusuario=" + idusuario + " where idoferta=" + idoferta;

        System.out.println(sentenciaSQL);
        try {
            conexion.abrirConexion();
            value = conexion.executeQuery(sentenciaSQL);


        } catch (Exception ex) {
            System.out.println("error " + ex);
        }
        conexion.cerrarConexion();
        return value;
    }

    @Override
    public int eliminarReg(int id) {

        sentenciaSQL = "DELETE FROM Oferta WHERE idoferta=" + id;

        try {
            conexion.abrirConexion();
            value = conexion.executeQuery(sentenciaSQL);
            conexion.cerrarConexion();


        } catch (Exception ex) {
            System.out.println("error " + ex);
            conexion.cerrarConexion();
            value = -1;
        }
        return value;
    }
}


//reportes y ganador de la subasta  (selectmax)